#!/usr/bin/env python
#-*- coding: utf-8 -*-


# PacoDbg - an advanced RCE analysis debugger
# Copyright (C) 2013 The PacoDbg contributers

# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.

# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.

# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.


__all__ = ["Main"]


import sys
import os

import urwid

from .pallete import Pallete


class Main(object):
    def __init__(self):
        pass
    
    def run(self):
        palette = Pallete()
        
        def exit_on_q(input):
            if input in ('q', 'Q'):
                raise urwid.ExitMainLoop()
        
        
        footer = urwid.AttrMap(urwid.Text("footer"), "footer")
        header = urwid.AttrMap(urwid.Text("header"), "header")
        
        listbox_content = [
            urwid.Text("Hello", align='center'),
            urwid.Text("World", wrap='clip'),
            ]
        disassembly = urwid.ListBox(urwid.SimpleListWalker(listbox_content))

        loop = urwid.MainLoop(urwid.Frame(urwid.AttrMap(disassembly, "disassembly"), 
                                          footer=footer,
                                          header=header),
                              palette=palette,
                              unhandled_input=exit_on_q)
        loop.run()


